home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / tools / bison.lha / bison++-1.04 / README < prev    next >
Text File  |  1991-03-27  |  2KB  |  47 lines

  1.             Bison parser generator for C++
  2.  
  3. This directory contains a version of the GNU Bison parser generator
  4. modified by Larry Augustin to work with C++.  It has been tested
  5. with GNU g++ 1.37.1.
  6.  
  7. The major difference between this program and Bison is that this
  8. program generates a C++ class declaration for the parser.
  9. Documentation on how to use this class is nonexistent.  The easiest
  10. thing to do is run a simple YACC file through bison++ and look at the
  11. .tab.h and .tab.c files generated.  The .tab.h file contains a C++
  12. class declaration for the parser.  The yylex() routine is a member
  13. function in this class.  Somewhere you will have to write this
  14. function.  A useful contribution to the C++ community would be a
  15. version of flex (flex++) to go with bison++.
  16.  
  17. The advantage of this approach is that it allows you to have multiple
  18. instances of a parser, and also to have different parsers in the same
  19. application without worrying about name conflicts between all the
  20. global names (yylex, yylval, etc.) that YACC usually defines.  All
  21. those names still exist in bison++, except that they are now defined
  22. with the scope of the parser class declaration.
  23.  
  24. Larry M. Augustin            ERL 414
  25. lma@sierra.stanford.edu            Computer Systems Lab
  26. lma@dayton.stanford.edu            Stanford University
  27. (415) 723-9285                Stanford, CA 94305
  28.  
  29. ------------------------------------------------------------------------
  30.  
  31. GNU Bison README:
  32.  
  33. This directory contains the Bison parser generator.
  34.  
  35. When installing Bison on Sequent (or Pyramid?) systems, you must
  36. be in the Berkeley universe.
  37.  
  38. On systems that do not have a working `alloca' function, you will
  39. have to get a working `alloca' (perhaps from GNU Emacs) and edit the
  40. Makefile so that it will be used.
  41.  
  42. On system V, you will need to define the macro USG while compiling.
  43.  
  44. Send bug reports to bug-gnu-utils@prep.ai.mit.edu.
  45. Please include the date and author of the last entry in ChangeLog
  46. in each bug report; this serves as a version number for Bison.
  47.